<template>
  <div style="height:100vh;overflow:hidden;
  background-image:linear-gradient(135deg,#1352f2,#3c82f5);">
    <el-container style="padding:30px;">
      <el-header>
        <el-row>
          <el-col :span="3">
            <img src="/imgs/login/logo.png" style="height: 50px;">
          </el-col>
          <el-col :span="1">
            <img src="/imgs/login/auto.png" style="height: 50px;">
          </el-col>
          <el-col :span="1">
            <img src="/imgs/login/verticalLine.png" style="height: 50px;">
          </el-col>
          <el-col :span="19">
            <span style="color:#fff;font-size:30px;font-weight:bold;">工程师上门服务</span>
          </el-col>
        </el-row>
      </el-header>
      <el-main>
        <el-row>

          <el-col :span="8">
            <el-card style="margin-top: 80px;">
              <h3 style="text-align: center;">用户登录</h3>
              <el-form label-position="top">
                <!-- 添加用户类型选择 -->
                <el-form-item label="用户类型">
                  <el-radio-group v-model="userType">
                    <el-radio label="user">普通用户</el-radio>
                    <el-radio label="engineer">工程师</el-radio>
                  </el-radio-group>
                </el-form-item>
                <el-form-item label="用户名">
                  <el-input placeholder="请输入用户名" v-model="user.username"></el-input>
                </el-form-item>
                <el-form-item label="密码">
                  <el-input placeholder="请输入密码" show-password v-model="user.password"></el-input>
                </el-form-item>
                <el-form-item>
                  <el-button type="primary" style="width:100%;" @click="login">登录</el-button>
                </el-form-item>
              </el-form>
              <div style="text-align: center;">
                <el-button type="text" @click="goToRegister">没有账号？立即注册</el-button>
              </div>
            </el-card>
          </el-col>
        </el-row>
      </el-main>
    </el-container>
  </div>
  <img src="/imgs/login/bg.png" style="width: 100%; height: 100%; margin: 0; position: absolute; ">

</template>

<script setup>
import { ref } from "vue";
import axios from "axios";
import { ElMessage } from "element-plus";
import { useRouter } from "vue-router";

const router = useRouter();

// 定义对象用来保存登录表单数据
const user = ref({ username: '', password: '' });
// 定义用户类型
const userType = ref('user');

// 定义登录方法
const login = () => {
  console.log(user.value);
  // 将用户类型添加到请求数据中
  const loginData = {
    ...user.value,
    userType: userType.value
  };
  axios.post(BASE_URL + '/v1/user/login', loginData)
      .then((response) => {
        if (response.data.code == 2000) {
          ElMessage.success('登录成功!');
          localStorage.setItem('user', JSON.stringify(response.data.data));
          router.push('/');
        } else {
          ElMessage.error(response.data.msg);
          user.value = { username: '', password: '' };
        }
      });
};

// 跳转到注册页面
const goToRegister = () => {
  router.push('/register');
};
</script>

<style scoped>
</style>